/**
 * Copyright &copy; 2012-2016 <a href="https://istep.lczyfz.com">Istep</a> All rights reserved.
 */
package com.lczyfz.istep.modules.scene.dao;

import com.lczyfz.istep.common.persistence.CrudDao;
import com.lczyfz.istep.common.persistence.annotation.MyBatisDao;
import com.lczyfz.istep.modules.scene.entity.SceneEnvironment;
import com.lczyfz.istep.modules.scene.entity.SceneEnvironmentRelate;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 教学实验环境DAO接口
 * @author dingh
 * @version 2017-03-07
 */
@MyBatisDao
public interface SceneEnvironmentDao extends CrudDao<SceneEnvironment> {
    void  evmSgInsert (String info1,String info2);
    void  evmNetworkInsert (String info1,String info2);
    void  evmRouterInsert (String info1,String info2);
    void  evmVmInsert (String info1,String info2,String info3,String info4,String info5);

    void evmNetworkDelete(SceneEnvironment sceneEnvironment);
    void evmVmDelete(SceneEnvironment sceneEnvironment);
    void evmRouterDelete(SceneEnvironment sceneEnvironment);
    void evmSgDelete(SceneEnvironment sceneEnvironment);
    void routerInterfaceDelete(SceneEnvironmentRelate sceneEnvironmentRelate);
    void subnetDelete(SceneEnvironmentRelate sceneEnvironmentRelate);

    List<SceneEnvironmentRelate> findEvmNetworkList(SceneEnvironment sceneEnvironment);
    List<SceneEnvironmentRelate> findEvmRouterList(SceneEnvironment sceneEnvironment);
    List<SceneEnvironmentRelate> findEvmVmList(SceneEnvironment sceneEnvironment);
    List<SceneEnvironmentRelate> findEvmSecurityGroupList(SceneEnvironment sceneEnvironment);

    SceneEnvironment findEnvironmentByName(@Param("name")String name,@Param("DEL_FLAG_NORMAL")String DEL_FLAG_NORMAL);


}